package com.wgy.designmode.action.visitor;

import com.wgy.designmode.action.visitor.element.Computer;
import com.wgy.designmode.action.visitor.element.ComputerPart;
import com.wgy.designmode.action.visitor.element.Keyboard;
import com.wgy.designmode.action.visitor.visitor.ComputerPartVisitor;
import com.wgy.designmode.action.visitor.visitor.ComputerPartVisitor_1;

/**
 * 访问者模式
 * 使用场景：解决在稳定数据结构和易变操作之间的耦合问题，使得操作可以独立于数据结构变化。
 *
 */
public class VisitorPatternDemo {

    public static void main(String[] args) {

        ComputerPartVisitor computerPartVisitor1 = new ComputerPartVisitor_1();

        ComputerPart computer = new Computer();
        computer.accept(computerPartVisitor1);


    }

}
